<?php
    @header("Content-Type:text/html;charset=utf-8"); // 接口返回给前端数据类型

    // 链接数据库
    const host = "localhost";
    const user = "root";
    const pwd = "root";
    const dbName = "2101";
  
    $conn = mysqli_connect(host,user,pwd,dbName);

    if(!$conn){
        exit("数据库链接失败");
    }

    // 设置字符串编码 (转码设置)
    mysqli_query($conn,"set names utf8"); // 从数据库取数据时  将编码转为utf-8;  
    mysqli_query($conn,"set character set utf-8"); // 向数据库存数据时  将编码转为utf-8

    // mysqli_query($conn,sql);   执行传入的sql语句
    // $conn 链接对象
    // sql   执行的sql语句

    // ---------------------------------查询----------------------------------------------

    $name = $_GET["name"];
    if(!$name){  //优化处理 =>传参
        $msg = array();
        $msg["status"] = false; 
        $msg["detail"] = "请传入完整参数"; 
        exit(json_encode($msg));
    }

    // 执行查询语句
    $search  = "select id,name,class,chinese,math,english,chinese+math+english as total from `grade` where name = '$name'";

    // mysqli_query($conn,sql);   执行传入的sql语句    查询 => 成功:结果对象(包含结果但是需要解析)  失败:false (sql语句有误)
    $result = mysqli_query($conn,$search);
    // print_r($result);   // 结果对象
    // echo $result -> num_rows;


    // mysqli_fetch_array($result)   =>解析传入的结果对象  成功:返回解析的数据->数组( 数值数组+关联数组)  失败:false
    //  mysqli_fetch_assoc($result)   =>解析传入的结果对象  成功:返回解析的数据->数组(关联数组)  失败:false

    // mysqli_fetch_array(),mysqli_fetch_assoc() 一次只解析一条

    // $item = mysqli_fetch_array($result);
    $item = mysqli_fetch_assoc($result);
    // print_r($item);

    // 数据处理  
    $msg = array();
    if($item){ //有数据
        // echo json_encode($item);
        $msg["status"] = true; 
        $msg["detail"] = "ok"; 
        $msg["data"] = $item; 
    }else{
        $msg["status"] = false; 
        $msg["detail"] = "not found"; 
        $msg["data"] = null; 
    }

    echo json_encode($msg);


    /* {
        status:true,
        detail:"查询成功",
        data
    } */


?>